const express = require("express");
const multer = require('multer');
const adminRouter = express.Router();
const adminController = require('../controller/AdminController')
const categoryController = require('../controller/CategoryController')
const tagController = require('../controller/TagController')
const articleController = require('../controller/ArticleController')

let upload = multer({dest: 'uploads/'})


// 用户相关接口
// 修改密码接口
adminRouter.put('/changePassword',adminController.changePassword)

// 更新用户头像端口
adminRouter.put('/updateAvatar', adminController.updateAvatar)

// 后台获取用户登录信息
adminRouter.get('/adminInfo/', adminController.adminInfo)

// 获取后台管理员列表
adminRouter.get('/list/', adminController.adminList)

// 上传文件端口
adminRouter.post('/upload',upload.single('avatar'),adminController.upload)


// 分类相关接口
// 分类查询接口.。
adminRouter.get('/search/', categoryController.searchCategory)

//分页查找分类接口
adminRouter.get('/categoryList/', categoryController.getCategoryList)

// 根据id查询分类接口
adminRouter.get('/category/', categoryController.getCategoryById)

// 查询所有分类接口
adminRouter.get('/getAllCategory/', categoryController.getAllCategory)

// 删除分类接口
adminRouter.delete('/category/', categoryController.delCategory)

// 添加分类接口
adminRouter.post('/category/', categoryController.addCategory)

// 修改分类接口
adminRouter.put('/category/', categoryController.updateCategory)

// 删除多个分类接口
adminRouter.delete('/delBatchCategory/', categoryController.delBatchCategory)

// 修改分类时检查是否重名接口
adminRouter.get('/checkCategoryName/',categoryController.checkUpdateCategoryName)


// 标签相关接口
// 分页查找标签接口
adminRouter.get('/tagsList/',tagController.getTagsList)

// 添加标签接口
adminRouter.post('/tags/', tagController.addTag)

// 删除标签接口
adminRouter.delete('/tags/', tagController.delTag)

// 修改标签接口
adminRouter.put('/tags/', tagController.updateTag)

// 删除多个标签接口
adminRouter.delete('/deleteBatchTags/', tagController.delBatchTag)

// 获取全部标签接口
adminRouter.get('/allTags/', tagController.getAllTags)

// 文章相关接口
// 分页条件查找文章接口
adminRouter.get('/articleList/',articleController.getArticleList)

// 添加文章
adminRouter.post('/article/',articleController.addArticle)

// 修改文章
adminRouter.put('/article/',articleController.setArticle)

// 修改发布状态
adminRouter.put('/articleStatus/',articleController.setArticleStatus)

// 删除文章
adminRouter.delete('/article/',articleController.deleteArticle)


module.exports = adminRouter